package com.mzx.javase.jiekou;

/**
 * @Description:
 * @Date: 2021/12/1 16:10
 * @Author: MarKing
 *
 * 接口和抽象类的区别：
 * 相同点：
 *  都存在抽象方法
 *  都不能创建对象，都不能被实例化
 *  可以作为引用类型指向子类型的对象
 *  作为引用类型，可以具备object类所定义的方法
 * 不同点：
 *  抽象类可以定义变量，而接口中变量的定义隐式使用了public static final修饰，即公开静态常量
 *  抽象类定义的方法，可以有abstract修饰，也可以定义有方法体的方法；而接口定义的方法隐式使用了public abstract修饰。接口中的方法不能有方法体;
 *  接口中不能有构造方法，静态代码块，动态代码块
 *
 *  使用接口的好处：
 *  降低耦合度，设计与实现完全分离，更换更具体的实现
 *  更容易搭建程序框架
 */
public class AnZhuo implements Usb {
    @Override
    public void fun() {
        System.out.println("安卓实现的方法1");
    }

    @Override
    public void fun1() {
        System.out.println("安卓实现的方法2");
    }

}
class Test{
    public static void main(String[] args) {
        Usb anZhuo = new AnZhuo();
        Usb.staticFun();
        anZhuo.defFun();
        anZhuo.fun();
        anZhuo.fun1();
    }
}
